#!/usr/bin/awk -f
#-------------------------------------------------------
#	FileName	: hb.awk
#	Author		：hpy
#	Date		：2021年08月10日
#	Description	：按第一列为ID，ID相同，则没行数据按列合并，课设置
#-------------------------------------------------------


# 在BEGIN块配置参数
BEGIN {
    # FS="|"   #指定数据分隔符
    OFS="|"    #输出数据的列分隔符
    id=1       #主键 ID 的列 ，可设置 ，设置第几列为主键
    cur_d=","  #合并数据前后连接的分隔符 
}

{
    for(i=1;i<=NF;i++){

        if( i == id) {
            a[$id,i]=$i;
            b[$id] 
            continue 
        }
        if(length(a[$id,i])>0){
            if(length($i)>0){
                a[$id,i]=a[$id,i]cur_d$i;
                b[$id]
            } else {
                b[$id]
            }

        } else {
             if(length($i)>0){
                a[$id,i]=$i;
                b[$id]
            } else {
                b[$id]
            }           
        }
    }

}
END{
    # for(j in b){
    #     printf("%-6s",j);
    #     for(k=2;k<NF;k++)
    #         printf("%-6s",a[j,k]);
    #         print a[j,k]
    # }

    for(j in b){
        # printf("%s ",j);
        for(k=1;k<NF;k++) {
            printf("%s %s",a[j,k],OFS);
        }
        print a[j,k]  #最后一个主要显示换行
    }
}